#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <math.h>

//#include <stdio.h>
//#include <math.h>
//
//long long func(long long i)
//{
//	long long sum = 0;
//	while (i)
//	{
//		if (i % 2 == 1)
//			sum++;
//		i >>= 1;
//	}
//	return sum;
//}
//
//int main()
//{
//	long long n = 0;
//	long long n1 = 0;
//	long long result = 0;
//	scanf("%lld", &n);
//	while (scanf("%lld", &n) != EOF)
//	{
//		result = func(n);
//		n1 = (long long)pow(2, result) - 1;
//		printf("%lld %lld\n", func(n), n1);
//	}
//	return 0;
//}

//long long func(long long i)
//{
//	if (i < 2)
//		return i;
//	return func(i / 2) + func(i % 2);
//}
//
//int main()
//{
//	long long n = 0;
//	long long n1 = 0;
//	long long result = 0;
//	scanf("%lld", &n);
//	while (scanf("%lld", &n) != EOF)
//	{
//		n1 = 0;
//		result = func(n);
//		while (func(n1++) != result);
//		n1--;
//		printf("%lld %d\n", func(n), n1);
//	}
//	return 0;
//}
//float func(int i)
//{
//	return pow(i, 1.0 / 2) - (int)pow(i, 1.0 / 2);
//}
//int main()
//{
//	int n = 0;
//	int max = 0;
//	scanf("%d", &n);
//	while (scanf("%d", &n) != EOF)
//	{
//		if (n > max && func(n) != 0)
//			max = n;
//	}
//	printf("%d\n", max);
//	return 0;
//}